﻿
using System;

namespace BotonJXC.Entity
{
    /// <summary>
    /// Product
    /// </summary>
    public class Product : BaseEntity
    {
        public Product()
        {

        }

        public virtual int ProductId { get; set; }
        public virtual string ProductCode { get; set; }
        public virtual string Barcode { get; set; }
        public virtual string ProductName { get; set; }
        public virtual string ProductSpec { get; set; }
        public virtual double PackSpec { get; set; }
        /// <summary>
        /// 1:平均进价，2:批次库存
        /// </summary>
        public virtual short AccType { get; set; }
        public virtual Supplier Supplier { get; set; }
        public virtual ProductType Type { get; set; }
        public virtual Unit Unit { get; set; }
        public virtual Unit DefUnit { get; set; }
        public virtual Warehouse Warehouse { get; set; }
        public virtual string UnitTrans { get; set; }
        /// <summary>
        /// 1:加工品、2:成本核算品、3:贵重物品、4:常规货品
        /// </summary>
        public virtual int ProductAttr { get; set; }
        public virtual Double AllocateAddRate { get; set; }
        public virtual Double TaxRate { get; set; }
        public virtual Double RecRate { get; set; }
        public virtual Double PurPrice { get; set; }
        public virtual Double DefPurPrice { get; set; }
        public virtual Double OutPrice { get; set; }
        public virtual Double TaxOutPrice { get; set; }
        public virtual string StorageEnv { get; set; }
        /// <summary>
        /// 体积
        /// </summary>
        public virtual string Volume { get; set; }
        public virtual Double Weight { get; set; }
        public virtual string Colour { get; set; }
        /// <summary>
        /// Y:是 N:否
        /// </summary>
        public virtual string AutoReplPro { get; set; }
        public virtual int StockLow { get; set; }
        public virtual int StockUpp { get; set; }
        public virtual Double AttritionRate { get; set; }
        public virtual string CargoSpace { get; set; }
        public virtual LogisticsModel LogisticsModel { get; set; }
        public virtual string MnCode { get; set; }
        public virtual Double ShelfLife { get; set; }
        /// <summary>
        /// Y:启用 N:停用
        /// </summary>
        public virtual string Enabled { get; set; }
        public virtual string AllowOut { get; set; }
        public virtual string AllowOrder { get; set; }
        public virtual Double OtherPrice { get; set; }
    }
}